import {
  getMoreThema
} from '../../api/api.js';
import {
  getList
} from '../../api/api.js';


Page({
  /**
   * 页面的初始数据
   */
  data: {
    //分页字段
    pageSize:2,
    themaList: [],
    options: {},
    //默认图片地址
    defaultImg: 'http://i0.hdslb.com/bfs/article/a7d996b9890b0847e58ddf3571e99352117fe5de.gif',
    // 下面的不是我的代码
    tit: '',
    sortIndex: 0,
    sortItem: [{
      title: '销量',
    }, {
      title: '新款',
    }, {
      title: '价格',
    }],
    currentPage:2,
    price:0  //"价格排序0升序/1降序")
   


  },
  sortThis: function(e) {
    // sortIndex是用来判断是不是当前的选中的排序方式的，
    // 然后改变排序的颜色
    // 每次点击新的排序都要初始化页面页码currentpage
    /**
     * 
     * 
     * **/ 
    let data = {
      currentPage: 1,
      pageSize: 10,
      keyWords: this.data.options.title,
      // 默认是1按照销量排序
      sort:1
    }




    // 获取dom 上面的索引
    let idx = e.currentTarget.dataset.id;
    // 获取上一个排序状态
    let sortIndex = this.data.sortIndex;
   

    if (idx == 0) {
      // 重复点击发发送请求
       if(sortIndex == 0)return;
      // 按照销量
       data.sort  = 1
    } else if (idx == 1) {
      if (sortIndex == 1) return;
      //按照最新款排序
       data.sort = 3
    } else {
      //按照价格排序
      if (idx == 2){
        // 如果上一个索引也是2，那么改变价格的排序方式
         data.sort = 2
         if(this.data.price == 0){
             this.setData({
                price:1
             })

            // 规定降序
            data.price = 1;
         }else{
           this.setData({
             price:0
           })
           // 升序
           data.price = 0;
         }
      }
       
    }
    
    // 改变索引的值
    // 每次改变排序方式的时候页码也要初始化
    this.setData({
      sortIndex: idx,
      currentPage: 2,

    })

    //  根据现有的参数去发送请求
    // 目前来说有排序功能的不是主题，只有搜索
    /**
     * * 商品查询对象(SearchObject)
        keyWords;搜索关键字
        merchantId;商家id
        sort;排序:1按销量/2按价格/3按新品
        price;价格排序0升序/1降序

      
     * **/ 
       console.log(data);
       this.getSearchList(data); 


    

  },


  toDetail: function(e) {
    console.log(e.currentTarget.dataset.id)
    wx.navigateTo({
      url: '../goodsDetails/goodsDetails?id=' + e.currentTarget.dataset.id,
    })
  },

  //前台index 序号对应后台的排序
  // 只需要调用这个方法就会自动返回后台排序对应的序号
  idxToSort(){
    let idx = this.data.sortIndex;
    let data = 0;
    if (idx == 0) {
      data = 1
    } else if (idx == 1) {
      data = 3
    } else {
      data = 2
    }
    return data;
  },




  onLoad: function() {

  },




  onShow: function() {
    //根据传递过来的参数然后
    // 然后判断调用哪个api
    // console.log(options)
    // 保存参数
    // this.setData({
    //   options,
    // })

    // //动态设置标题
    // wx.setNavigationBarTitle({
    //   title: options.title
    // })
 



    let pages = getCurrentPages();
    let page = pages[pages.length - 1];
    let options = page.options;
    console.log(options,'option参数')
    if(options == this.data.options){
        console.log("页面不需要更新")
        return;
    }




    this.setData({
      options,
    })

    //因为搜索和thema 传递的参数不一样
    // 所以要判断是search 还是 thema

    if (options.type == 'thema') {
       this.getThemaList(options);
    } else if (options.type == 'search'){
        let data = {
          currentPage: 1,
          pageSize: 10,
          keyWords: this.data.options.title,
          // 默认是1按照销量排序
          sort: 1,
          
        }
        this.getSearchList(data); 
    }
  },




  //加载搜索列表
  // 这个方法只有onshow 和 切换排序方式的时候调用
  // 每次在调用onshow的时候和和调用切换排序方式的时候都初始化
  // currentPage
   getSearchList(data){
      console.log("搜索");
      
      getList(data).then(res => {
        console.log(res);
        this.setData({
          themaList: res.data.data.rows,
          currentPage:2
        })
      })
   },


  // 加载主题列表
  getThemaList(options){
       console.log("主题模块")

        //定义参数
        let data = {
          themeId: options.id,
          currentPage:1,
          pageSize:10
        }
      
        console.log("获取不同的主题-----",data)

        getMoreThema(data).then(res => {
          console.log(res);
          if (res.statusCode == 200) {
            if (res.data.code == 200) {
              this.setData({
                themaList: res.data.data,
                pageSize: ++this.data.pageSize
              })

              console.log(this.data.pageSize);
            } else {
              wx.showToast({
                title: '服务器错误',
              })
            }
          } else {
            wx.showToast({
              title: '网络错误',
              icon: 'none'
            })
          }
        })
  },




  //  触底事件，分页加载更过

  lower() {
    console.log("3333")
    if(this.data.options.type == 'thema') {
      //去掉排序头
      console.log("主题模块加载更多")

      //定义参数
      let data = {
        themeId:this.options.id,
        currentPage: this.data.pageSize,
        pageSize:10 
      }

      // 数据不够没法测试翻页功能
      getMoreThema(data).then(res => {
        console.log(res);
        if (res.statusCode == 200) {
          if (res.data.code == 200) {
            let newData = res.data.data;
            if(res.data.data.length<1){
                wx.showToast({
                  title: '没有更多了哦',
                  icon: 'none'
                })
                return;
            }
            let oldData = this.data.themaList;
            newData = oldData.concat(newData);
            this.setData({
              themaList: newData,
              pageSize: ++this.data.pageSize
            })
            console.log(this.data.pageSize);
          } else {
            wx.showToast({
              title: '服务器错误',
            })


          }
        } else {
          wx.showToast({
            title: '网络错误',
            icon: 'none'
          })
        }
      })
    } else if (this.data.options.type == 'search'){
      // 是搜索页面过来的
      console.log("搜索加载更多")
      let data = {
          currentPage: this.data.currentPage,
          pageSize: 10,
          keyWords: this.data.options.title,
          price: this.data.price,

      }

      let sort = this.idxToSort();
      data.sort = sort;
      console.log(sort);


      getList(data).then(res => {
        // 判断数据是不是空
        if (res.data.data.rows.length<1){
           wx.showToast({
             title: '没有更多了哦',
             icon:'none'
           })

           return;
        }
        let data = this.data.themaList;
        data = data.concat(res.data.data.rows);
        // 页码加一
        this.setData({
          themaList: data,
          pageSize: ++this.data.currentPage
        })
      })

    }


    console.log(this.data.currentPage,"当前页码")
  },



  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {
    console.log("下拉刷新");
    wx.stopPullDownRefresh() //刷新完成后停止下拉刷新动效
    let options = this.data.options;
    if (options.type == 'thema') {
      this.getThemaList(options);
    } else if (options.type == 'search') {
      let data = {
        currentPage: 1,
        pageSize: 10,
        keyWords: this.data.options.title,
        // 默认是1按照销量排序
        sort: 1,
        
      }
      this.getSearchList(data);
    }

  },

  // scrollTop(){
  //     console.log(111)
  // },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {
    console.log("上拉触底")

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  }
})